userList_page.php
<?php 
//当前的页号$page，未传参数的情况下，默认第1页
if (!isset($_GET["page"])) {
  $page=1;
}else{
    $page=$_GET["page"];
}
//每页显示多少条记录$rowsperpage
$rowsperpage=5;
//总共有多少条记录$totalrows
	$sql="select * from users";
	if($_GET['key']){    //如果根据用户名搜索，需要修改sql语句
    $key = trim($_GET['key']);
    $sql = $sql." where Uname like '%{$key}%' ";    
    }       
    $result = mysql_query($sql) or die('查询失败！'.mysql_error()); 
    $totalrows=mysql_num_rows($result);//$num记录了结果集中的结果条数
    if ($totalrows==0) {
    	echo "没有找到记录";
    	exit;
    }
  //共分了多少页$totalpages，总记录数除以每页记录数后向上取整
  if($totalrows%$rowsperpage==0)
    $totalpages=$totalrows/$rowsperpage;
  else{
    $totalpages=ceil($totalrows/$rowsperpage);
  }
 //每页的起始记录编号$start 
$start=($page-1)*$rowsperpage;
?>

<!--搜索功能的表单-->
<form  action="">
    请输入用户名：
  <input type="text" name="key">
  <input type="submit" value="搜索">  
 </form> 

<!--存储用户信息列表的表格-->
<table border="1" align="center"> 
 <caption>注册用户信息列表</caption>
 <tr>
   <th>用户编号</th>   <th>用户名</th>      <th>性别</th>   <th>生日</th>
   <th>头像</th>   <th>电子邮件</th>   <th>操作</th>
 </tr>
 <?php
 $sql=$sql." limit $start,$rowsperpage"; //编写获取当前页面包含记录的sql语句
 $result=mysql_query($sql);
 $i=1;
  while($row = mysql_fetch_assoc($result))
  {
  ?>
<tr>
  <td><?php echo $i++; ?></td>
  <td><?php echo $row["Uname"]; ?></td>
  <td><?php if($row["Gender"]==0) echo "男"; else echo "女";?></td>
  <td><?php echo $row["birthdate"]; ?></td>
  <td><img src="../images/<?php echo $row["Pic"]; ?>" width=60 height=60 title=<?php echo $row["intro"]; ?> alt=""></td>
  <td><?php echo $row["email"]; ?></td>
  <td><a href="userEdit.php?Uid=<?php echo $row["Uid"];?>">修改</a> | <a href="userDelete.php?Uid=<?php echo $row["Uid"];?>" onclick="return confirm('确认删除吗？')">删除</a></td>
</tr>
 <?php 
   }
 ?> 
</table>
<!--存储分页超链接的表格-->      
<table align="center" width="70%">
 <tr>
  <td colspan="8" align="center">
<?php 
echo "共".$totalrows."条记录 分".$totalpages."页&nbsp;&nbsp;";

//第一种分页显示的形式，首页 尾页 上一页 下一页
//如果不是第1页，则显示第一页和上一页的超链接，否则只显示文字
  if($page>1){
    $first = "<a href=?key={$key}&page=1>首页</a>";
    $pre = "<a href=?key={$key}&page=".($page-1).">上一页</a>";
  }else{
    $first = '首页';
    $pre = '上一页';
  }
  //如果不是最后一页，则显示下一页和最后一页的超链接，否则只显示文字
  if($page<$totalpages){
    $last = "<a href=?key={$key}&page=$totalpages>尾页</a>";
    $next = "<a href=?key={$key}&page=".($page+1).">下一页</a>";
  }else{
    $last = '尾页';
    $next = '下一页';
  }
echo $first."&nbsp;".$pre."&nbsp;";

//第二种分页显示的形式，循环显示第*页超链
for ($i=1; $i <=$totalpages; $i++) { 
echo "<a href=?page=$i&key=$key>第{$i}页</a>&nbsp;";
}

echo $next."&nbsp;".$last."&nbsp;";
 ?> 
 </td>
 
<td>
<!--第3种分页显示的形式，跳转到*页--> 
 <form action="">
 <!--搜索关键字通过隐藏字段传递-->
 <input type="hidden" name="key" value=<?php
  if(isset($_GET["key"]))
      echo $_GET["key"];
  ?>>
  <input type="text" name="page">
  <input type="submit" value="GO">
 </form>  
  </td>
</tr>
</table>
